package com.nineclock.attendance.service;

import com.nineclock.attendance.dto.AttendPunchDTO;
import com.nineclock.attendance.dto.AttendPunchUserWholeDayDTO;

import java.io.IOException;
import java.util.List;

public  interface AttendPunchService {
    /**
     * 移动端打卡
     * @param attendPunchDTO
     */
    public abstract void punch(AttendPunchDTO attendPunchDTO);

    /**
     * 获取打卡记录
     * @return
     */
   public AttendPunchUserWholeDayDTO queryPunchRecord();

    /**
     *  查询指定时间段内的考勤列表数据
     * @param startTime
     * @param endTime
     * @return
     */
    List<AttendPunchDTO> queryMembers(String startTime, String endTime);

    /**
     * 导出指定时间段之内的考勤数据
     * @param startTime
     * @param endTime
     */
    void exportAttendData(String startTime, String endTime) throws IOException;

    String generateExcelReportByCompanyId ( Long companyId );
}
